import java.util.ArrayList;
import java.util.List;

/**
 * 对象结构
 * 
 * 内部组装元素，客户端调用此类，执行方法，方法内循环调用组装的元素。
 */
public class Computer implements ComputerPart {

    private List<ComputerPart> computerList = new ArrayList<ComputerPart>();

    public void addComputerPart(ComputerPart computerPart) {
        computerList.add(computerPart);
    }

    @Override
    public void accept(ComputerPartVisitor visitor) {
        for (ComputerPart computerPart : computerList) {
            computerPart.accept(visitor);
        }
    }
}
